iT邦幫忙

2024 iThome 鐵人賽

DAY 23
0
Security

picoCTF 刷題分享系列 第 23

picoCTF 刷題分享---Day 23(刷題去)

  • 分享至 

  • xImage
  •  

今天老師說對推甄研究所而言,鐵人賽是沒有用的(除非有得名,因此我宣布今天為退賽Day-1😭😭


題目:timer

  • 這題我使用的是apktool(因為金盾獎比賽裡也有這個程式

  • 簡單看一下help
    https://ithelp.ithome.com.tw/upload/images/20241007/20164155gG58oLtDn7.png
    usage: apktool d[ecode] [options] <file_apk>
    -f,--force Force delete destination directory.
    -o,--output The name of folder that gets written. Default is apk.out
    -p,--frame-path Uses framework files located in .
    -r,--no-res Do not decode resources.
    -s,--no-src Do not decode sources.
    -t,--frame-tag Uses framework files tagged by .

  • 注意看解壓縮的部分,d並不需要"-",我還在這卡了一下,所以這題使用

  • $ apktool d timer.apk

  • 對其進行解壓縮

  • 會產生一個timer的directory

  • 打開會看到
    https://ithelp.ithome.com.tw/upload/images/20241007/20164155yfUFvCH8FB.png

    • (底下有很詳細的解釋,我先簡單統整一下
      • AndroidManifest.xml:應用配置檔案。
      • apktool.yml:apktool 解碼配置檔案。
      • res/:應用資源檔案(圖片、佈局、字串等)。
      • original/:方便還原 APK 時保留的原始檔案。
  • 所以我查看的是AndroidManifest.xml跟apktool.yml這兩個檔案

  • 可以使用ctrl+F打上pico就會在apktool.yml找到flag了

  • 格式:picoCTF{flag.content}

解釋一下:

    1. AndroidManifest.xml
    • 功能:這是每個 Android 應用程式的核心配置檔案,包含應用程式的基本資訊(如應用名稱、包名、版本、權限、活動、服務、接收器等)。
    • 內容:描述應用如何與 Android 系統互動。它經過 apktool 解碼後,會是以可讀的 XML 格式顯示。
    1. apktool.yml
    • 功能:這是 apktool 的配置檔案,記錄了 APK 的解碼過程中的一些元數據,如 APK 的版本、編碼選項等。這個檔案通常用於 apktool 在之後的重新編譯過程中引用。
    • 內容:以 YAML 格式記錄了 APK 相關的配置資訊,例如資源解碼路徑、框架版本等。
    1. original/
    • 功能:這個目錄可能存在於某些解碼的 APK 中,包含一些未經處理的原始檔案或原本壓縮的資源。這是為了方便還原 APK 時保留的原始檔案。
    • 內容:通常包含壓縮檔案的副本或者編碼未被解壓的檔案。
    1. res/
    • 功能:這是應用的資源目錄,包含了應用程式的所有靜態資源,例如圖片、字型、佈局 XML 檔案、字串、多媒體檔案等。
    • 子目錄:
      • drawable/: 存放應用的圖片資源。
      • layout/: 存放應用的佈局檔案(XML 格式)。
      • values/: 包含字串、樣式、顏色等定義的 XML 檔案。
      • mipmap/: 存放應用的圖標或其他與解析度相關的圖片資源。
      • raw/: 包含應用的原始媒體檔案或其他未處理的檔案。

題目:Virtual Machine 0

  • 下載並解壓縮檔案
  • 會看到底下有個.dae檔(待會會說是什麼
  • 我選用的是blender打開,(跟Unity一樣可以壓著滾輪進行視角的滑動,滑滾輪可以縮放視野
  • 會看到以下這圖
    https://ithelp.ithome.com.tw/upload/images/20241007/20164155tWUEc3Eskl.png
  • 拆掉黑色方塊(擋路的
  • 並計算input和output的齒數差
    https://ithelp.ithome.com.tw/upload/images/20241007/20164155AoYd73j8kv.png
  • 可得知差了5倍
  • 所以output = input*5
  • 進入python計算input.txt*5會等於多少,把它換成hex值到kt.gy上放入你的hexadecimal
  • 就會看到ascii裡有picoCTF{flag.content}了
  • 格式:picoCTF{flag.content}

首先:
為什麼要換成hex是因為我不知道他原本是什麼進位,我試著在dec的欄位輸入過,但是是錯的
所以我把它變為hex確保一定是hex然後就成功了

再來:
什麼是.dea檔

.dea 檔案通常是指 Digital Asset Exchange 格式,也稱為 Collada(Collaborative Design Activity),是一種開放的3D模型交換格式,通常用於在不同3D應用程式和工具之間共享數據。

特徵:
3D 模型交換格式: .dea 檔案用於儲存3D模型數據
XML 格式: .dea 檔案是基於 XML 格式儲存的
跨平台使用: .dea 格式是為了讓3D資產在不同軟體和平台之間進行無縫交換而設計的,避免了格式不兼容的問題

(要看詳細的可以再去看更深入的,但簡單的解釋大概就醬

後記:
媽啊!!!感受到死線的恐怖了,害我打字數度飆到每秒500字,下次不再分心慢慢寫了啦!!😭😭😭😭


上一篇
picoCTF 刷題分享---Day 22(刷題去)
下一篇
picoCTF 刷題分享---Day24(刷題去)
系列文
picoCTF 刷題分享30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言